perm filename ALLCON.TEX[AM,DBL] blob sn#425717 filedate 1979-03-14 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00008 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	\setcount4 0
C00003 00003	\ASSEC{LISP Representation}
C00005 00004	 \ASSSEC{The `Compose' Concept}
C00021 00005	\noindent \5INT\1\foo{
C00033 00006	 \ASSSEC{The `Osets' Concept}
C00037 00007	\ASSECP{Concepts created by AM}
C00043 00008	\ASSECP{Maximally-Divisible Nos.}
C00055 ENDMK
C⊗;
\setcount4 0

\ASEC{CONCEPTS}

\ASSEC{LISP Representation}


Two of  AM's initial concepts are presented  in detail, ``Compose" and
``Osets" (composition of relations, and ordered sets).  The entries in
each  of  their  facets  are displayed:   We  provide  (i)  the  Lisp
expressions which  were actually stored there in  the AM program, and
(ii) an  English, Lambda calculus, and  math notation condensation of
all the  knowledge initially supplied to AM about  that facet of that
concept.

If there is any unmentioned  facet for a concept, then it started out
blank.  Many  of the facets of the original  concepts were left blank
\4intentionally\1, knowing  that AM would be able to  fill them in as
well. After all, if you can  fill in examples of any new concept, you
ought to be able to fill in examples of Compositions!


 \ASSSEC{The `Compose' Concept}



\noindent \5ENGN\0 \foo{ This is short 
for ``English name", and is the facet called ``Name(s)"
everywhere else in this book.} (COMPOSE Compose Composition (Afterwards))

\4Anglicised condensation:\0

\moveright 30pt\inbox{\hjust{Name(s): Compose, Composition, sometimes:  afterwards.}}

\yyskip

\hangindent 40pt after 1 \noindent \5DEFN\0 \hskip 5pt (TYPE NEC&SUFF PC DECLARA\-TIVE SLOW 
\it (FOR\-EACH X IN (DO\-MAIN BA2) RE\-TURN (APPLYB\foo{ 
The function ``APPLYB" indicates that a concept's facet is to be accessed and then
executed. (APPLYB C F x y$\ldots $) means: access an entry on facet F of concept C,
and then run it on the arguments x,y,$\ldots $ } BA1 ALGS (AP\-PLYB BA2 ALGS X] 

\yskip

\noindent \5DEFN-SUFF\0 [[TYPE SUFFICIENT NONRECURSIVE QUICK 

\han4{{\it 		     (AND (ISA BA1 'ACTIVE)}}

\han5{{\it 			  (ISA BA2 'ACTIVE)}}

\han5{{\it 			  (ISA BA3 'ACTIVE)}}

\han5{{\it 			  (ARE-EQUIV BA3 (ALREADY-COMPOSED\foo{
This LISP function checks to see whether the two operations have been composed
before. } BA1 BA2]}}

\yskip

\han3{{\rm 	[TYPE SUFFICIENT QUASIRECURSIVE SLOW }}

\han4{{\it (ARE-EQUIV BA3}}

\han6{{\it 		    (APPLYB 'COMPOSE 'ALGS BA1 BA2]\foo{ The arguments to Compose.Defn
(and to Compose.Algs as well) are called BA1, BA2,... Thus we would write
each definition of Compose as ``$\lambda $ (BA1 BA2 BA3) $\ldots $" }}}

\yskip

\han3{{\rm 	[TYPE SUFFICIENT QUASIRECURSIVE QUICK }}

\han4{{\it (EQUAL BA3 }}

\han6{{\it 		    (APPLYB  'COMPOSE  'ALGS BA1 BA2]]}}

\4Anglicised condensation:\0

\moveright 30pt \inbox{\hjust{\vjust{\hjust{Definitions: }
\hjust{\hskip 5pt Declarative slow: $\lambda \ (A,B,C)\ \forall x,\,C(x)=A(B(x)$}
\hjust{\hskip 5pt Sufficient Nonrecursive Quick: $\lambda \ (A,B,C) C$ has the Name `$A\circ B$'. }
\hjust{\hskip 5pt Sufficient, Slow: Are-equivalent(C,Compose.Algs(A,B)). }
\hjust{\hskip 5pt Sufficient, Quick: C=Compose.Algs(A,B). }
}}}

\yyskip

\noindent \5D-R\1\foo{ ``D-R" is short for ``Domain-Range".}

\han3{{\it ((OPERATION ACTIVE OPERATION)}}

\han3{{\it 	 (RELATION RELATION RELATION)}}

\han3{{\it 	 (PREDICATE ACTIVE PREDICATE)}}

\han3{{\it 	 (ACTIVE ACTIVE ACTIVE)) }}

\yskip

\noindent \5DOMAIN-RANGE--FILLIN1\0 

\han3{{\it (PROGN (ARGS-ASA COMPOSE F1 F2) (CADAR (CON-MERGE-ARGS\foo{
This is a LISP function, opaque to AM, which analyzes the Domain/range facets
of the two operations F1 and F2, and sees how (if at all) the range of F1 can
be made to overlap the domain of F2. Note that F2 is applied {\it after} F1.
 }  F1 F2)))}}

\yskip

\noindent \5DOMAIN-RANGE--FILLIN1--EXS\0 

\han3{{\it [PROGN (ARGS-ASA COMPOSE F1 F2)}}

\han3{{\it 	   [SETQ RAN1 (LAST (ANY1OF (GETB F1 'D-R] (* RAN1 is the range of F1)}}

\han3{{\it 	   [SETQ DOM1 (ALL-BUT-LAST (ANY1OF (GETB F1 'D-R] }}

\han3{{\it 	   [SETQ RAN2 (LAST (ANY1OF (GETB F2 'D-R] (* RAN2 is the range of F2)}}

\han3{{\it 	   [SETQ DOM2 (ALL-BUT-LAST (ANY1OF (GETB F2 'D-R]}}

\han3{{\it 	   [SETQ X (MAXIMAL RAN2 DOM1 'FRAC-OVERLAP]}}

\han3{{\it 	   (NCONC1 (LSUBST DOM2 for X in DOM1) RAN1]}}

\yskip

\4Anglicised condensation:\0

\moveright 30pt \inbox{\hjust{\vjust{
\hjust{	Domain/range:}
\hjust{\hskip 20pt <Active Active $\→$ Active> }
\hjust{\hskip 20pt <Operation Active $\→$ Operation> }
\hjust{\hskip 20pt <Predicate Active $\→$ Predicate> }
\hjust{\hskip 20pt <Relation Relation $\→$ Relation> }
\hjust{	Fillin: 2 {\it (out of a total of 9)} heuristics. }
\hjust{\hskip 20pt In Appendix 2, these are heuristics numbers 23 and 189.}
}}}

\yyskip 

\noindent \5ALGS\0 ((TYPE QUASIRECURSIVE INDIRECT CASES 

\han3{{\it [PROGN }}

\han4{{\it 	(COND}}

\han5{{\it 	     ((NULL BA1)}}

\han6{{\it 	       (APPLYB 'COMPOSE}}

\han7{{\it 		       'ALGS}}

\han7{{\it 		       (RAND-MEMB (EXS ACTIVE))}}

\han7{{\it 		       BA2 BA3 BA4))\foo{ Note what this clause says: if Compose.Algs
is ever called with its first argument missing, randomly select an Active to
use as that constituent of the composition. }}}

\han4{{\rm 	     &\ \foo{ Similar to last case: takes care of missing second argument.
The ampersand, ``&'', indicates an omission from this listing. }}}

\han5{{\it 	     ((ALREADY-COMPOSED BA1 BA2)   }}

\han6{{\it 	     (* Note: this sets GTEMP12)}}

\han6{{\it 	     GTEMP12)}}

\han5{{\it 	     ((AND BA1 BA2 (IS-CON\foo{ 
An abbreviation for (APPLYB 'ANY-CONCEPT 'DEFN BA1); i.e., test whether BA1
is a bona fide concept or not. } BA1)}}

\han6{{\it 		   (IS-CON BA2)}}

\han6{{\it 		   (ISA BA1 'ACTIVE)}}

\han6{{\it 		   (ISA BA2 'ACTIVE)}}

\han6{{\it 		   (SETQ GTEMP11 (CON-MERGE-ARGS BA1 BA2 GTEMP12)))}}

\han5{{\it 	       (* GTEMP12 is now the name of the new composition)}}

\han5{{\it 	       (CREATEB\foo{ 
CREATEB is a function which sets up a new blank data structure for a new concept.
} GTEMP12)}}

\han5{{\it 	       [SETQ GUP1 (COND ((ISAG CS-B 'COMPOSE) CS-B)  (T 'COMPOSE]}}

\han5{{\it 	       (* GUP1 is now the KIND of concept which GTEMP12 is to be an example of.
		   This will usually be ``COMPOSE" or some variant of it. )}}

\han5{{\it 	       [INCRB\foo{ 
The function call (INCRB C F X) means: add entry X to the F facet of concept C.
} GTEMP12 'DEFN}}

\han5{{\it 		(LIST 'TYPE 'APPLICATION 'OF GUP1}}

\han6{{\it 		 (APPEND (LIST 'APPLYB (Q\foo{ 
The LISP function ``Q" is like a double quote; after one evaluation
(Q X) returns 'X; after one more evaluation, 'X returns X; after
a final evaluation, we get the VALUE of X.
} COMPOSE) (Q ALGS) (KWOTE BA1) }}

\han9{{\it \hskip 10pt (KWOTE BA2))}}

\han7{{\it 			 (FIRSTN (LENGTH (CAAR GTEMP11))  BA-LIST]}}

\han4{{\it 	    (* Another way to fill in an entry for GTEMP12.Defn)}}

\han4{{\it 	    (COND}}

\han5{{\it 	      ([SETQ GTEMP308 (CAR (SOME (EXS COMPOSE)}}

\han6{{\it 				 (FUNCTION (LAMBDA (C)  }}

\han7{{\it 				     (MEMBER (LASTELE (GETB GTEMP12 'DEFN))}}

\han8{{\it 					     (GETB (LASTELE C)  'DEFN]}}

\han5{{\it 		(FORGET-CONCEPT GTEMP12)}}

\han5{{\it 		(CPRIN1S 8 GTEMP12 turned out to be equivalent to GTEMP308 DCR)\foo{
A conditional print statement. If the verbosity  level is high enough
(>8), this message  is typed out to the user. }}}

\han5{{\it 		GTEMP308)}}

\han5{{\it 	      (T (INCRB GUP1 'EXS (NCONC1 (GEARGS GUP1)  GTEMP12))}}

\han5{{\it 		 [SOME (RIPPLE GUP1 'GENL)}}

\han6{{\it 		       (FUNCTION (LAMBDA (G)}}

\han7{{\it 			   (SOME (GETB G 'D-R)}}

\han8{{\it 				 (FUNCTION (LAMBDA (D)}}

\han9{{\it 				     (AND (ISA BA1 (CAR D))}}

\han9{{\it 					  $\ \ \ \ $(ISA BA2 (CADR D))}}

\han9{{\it 					  $\ \ \ \ $(INCRB GTEMP12 'UP\foo{ The ISA's facet
is called ``UP" in the LISP program. } (CADDR D))}}


\han9{{\it 					  $\ \ \ \ $(INCRB (CADDR D) 'EXS GTEMP12]}}

\han5{{\it           (* This last INCRB says that if an operation f maps onto range C,
	   and we apply f and get a new Being, then that Being ISA C)\foo{ This
is 
a streamlined, specialized version of the more general
heuristic rule number 180. }}}

\han6{{\it 		 (INCRB GTEMP12 'IN-RAN-OF GUP1)}}

\han6{{\it 		 (INCRB BA2 'IN-DOM-OF GUP1)}}

\han6{{\it 		 (INCRB BA1 'IN-DOM-OF GUP1)}}

\han6{{\it 		 (* Now see if the composition GTEMP12 shares any ISA's entries with
			either constituent operation: BA1 or BA2)\foo{
This next MAPC is thus the LISP encoding of heuristic rule number 101.} }}

\han6{{\it 		 [MAPC [INTERSECTION (SET-DIFF }}

\han9{{\it    [UNION (GETB BA1 'UP) (GETB BA2 'UP]}}

\han9{{\it 					       (GETB GTEMP12 'UP]}}

\han7{{\it 		       (FUNCTION (LAMBDA (Z)}}

\han8{{\it 			   (COND}}

\han9{{\it 			     ((DEFN Z GTEMP12)}}

\han9{{\it 			       (INCRB Z 'EXS GTEMP12)}}

\han9{{\it 			       (INCRB GTEMP12 'UP Z]}}

\han6{{\it 		 (COND}}

\han7{{\it 		   [(GETB GTEMP12 'UP)}}

\han7{{\it 		     (SETB GTEMP12 'GUP (COPY (GETB GTEMP12 'UP]}}

\han7{{\it 		   (T (INCRB GTEMP12 'UP 'OPERATION)}}

\han7{{\it 		      (INCRB 'OPERATION 'EXS GTEMP12)))}}

\han6{{\it 		 {\rm &} (* A similar search now for GENL/SPEC of the composition)}}

\han6{{\it 		 (SETB GTEMP12 'D-R (CAR GTEMP11))}}

\han6{{\it 		 (INCRB GTEMP12 'ALGS }}

\han7{{\it 		       (LIST 'TYPE 'NONRECURSIVE 'APPLICATION 'OF GUP1 (CADR GTEMP11)))}}

\han6{{\it 		 {\rm &} (* Code for synthesizing a Defn entry for GTEMP12)}}

\han6{{\it 		 (SETB GTEMP12 'WORTH}}

\han6{{\it 		       (MAP2CAR (GETB BA1 'WORTH) (GETB BA2 'WORTH) }}

\han8{{\it 'TIMES1000))}}

\han6{{\it 	         (GS-CHECK\foo{
This is a general-purpose function for testing that there is no hidden
cycle in the Generalization network, that no two concepts are both
generalizations and specializations of each other, unless they are tagged
as being equivalent to each other. }  GTEMP12]]))]}}

\yskip

\4Anglicised condensation:\0

\moveright 30pt \inbox{\hjust{\vjust{
\hjust{	Algorithms: }
\hjust{\hskip 20pt Distributed: use the heuristics attached to Compose to guide }
\hjust{\hskip 30pt the filling in of various facets of the new composition. }
\hjust{\hskip 30pt (The heuristics referred to are shown in Appendix 2.21.) }
\hjust{\hskip 20pt Fillin: 5 {\it (out of a total of 9)} heuristics. }
\hjust{\hskip 20pt Check: 1 heuristic {\it (out of a total of 2)}. }
}}}

\yyskip

\noindent \5UP\0  \hskip 15pt	(OPERATION)

\yskip

\4Anglicised condensation:\0

\moveright 30pt \inbox{\hjust{\vjust{
\hjust{	Isa's: Operation }
}}}

\yyskip

\noindent \5WORTH\0 \hskip 11pt	(300) 

\yskip

\4Anglicised condensation:\0

\moveright 30pt \inbox{\hjust{\vjust{
\hjust{	Worth: 300 }
}}}

\yyskip

\noindent \5INT\1\foo{
Note that although the Fillin and Suggest heuristics are blended into the
relevant facets (e.g., into the Algorithms for COMPOSE), the INTERESTINGNESS
type heuristics are kept separate, in this facet (``INT"). }


\han1{{\hskip 8pt \rm [(IMATRIX (1 2 3) (4 5))}}

\han2{{\it  (COND [(INTERSECTION (MAPAPPEND (GETB BA2 'D-R) 'LAST)}}

\han7{{\it 		      (MAPAPPEND (GETB BA1 'D-R) 'ALL-BUT-LAST))}}

\han3{{\it 	300}}

\han3{{\it 	(IDIFF 400 (ITIMES 100 (IPLUS (LENGTH (GETB BA1 'D-R))}}

\han9{{\it 				      (LENGTH (GETB BA2 'D-R]}}

\han4{{\it        (REASON (* Range-of-op2 is 1 component of Domain-of-op1)))}}

\han2{{\it  (COND [[MEMB [CAR (LAST (CAR (GETB BA2 'D-R]}}

\han6{{\it 	      (ALL-BUT-LAST (CAR (GETB BA1 'D-R]}}

\han3{{\it 	400}}

\han3{{\it 	(IDIFF 1000 (ITIMES 100 (LENGTH (CAR (GETB BA1 'D-R]}}

\han3{{\it        (REASON (* In canonical interpretation, Range-of-op2 is a component of Domain of op1)))}}

\han2{{\it  (COND [(INTERSECTION (GETB CS-B TIES)}}

\han6{{\it 		(UNION (GETB BA1 TIES)(GETB BA2 TIES)))}}

\han3{{\it 	100}}

\han3{{\it 	(ITIMES 100 [LENGTH (INTERSECTION (GETB CS-B TIES)}}

\han7{{\it 				(UNION (GETB BA1 TIES)(GETB BA2 TIES])}}

\han3{{\it 	(REASON (* This composition preserves some good properties of its constituents))])}}

\han2{{\it  (COND [(SET-DIFFERENCE (GETB CS-B TIES)}}

\han5{{\it 		(UNION (GETB BA1 TIES)(GETB BA2 TIES)))}}

\han3{{\it 	100}}

\han3{{\it 	(ITIMES 100 [LENGTH (SET-DIFFERENCE (GETB CS-B TIES)}}

\han7{{\it 				(UNION (GETB BA1 TIES)(GETB BA2 TIES])}}

\han3{{\it 	(REASON (* This composition has some new props, not true of either constituent))])}}

\han2{{\it  (COND [(OR (GREATERP (GETB BA1 'WORTH) 500))}}

\han5{{\it             (GREATERP (GETB BA2 'WORTH) 500)))}}

\han3{{\it 	300}}

\han3{{\it 	(IQUOTIENT (ITIMES (GETB BA1 'WORTH)(GETB BA2 'WORTH))}}

\han4{{\it 		1000)}}

\han3{{\it        (REASON (* Op1 and/or Op2 are very interesting themselves))])}}

\han2{{\it  (COND [[IS-ONE-OF [CAR (LAST (CAR (GETB BA2 'D-R]}}

\han5{{\it 		   (ALL-BUT-LAST (CAR (GETB BA1 'D-R]}}

\han3{{\it 	350}}

\han3{{\it 	(IDIFF [ITIMES 100 (IDIFF }}

\han5{{\it 	           [LENGTH (CAR (GETB BA1 'D-R]}}

\han5{{\it 		   (LENGTH (RIPPLE [IS-ONE-OF}}

\han9{{\it 					   [SETQ TMP4 (CAR (LAST (GETB BA2 'D-R]}}

\han9{{\it 					   (ALL-BUT-LAST (CAR (GETB BA1 'D-R]}}

\han7{{\it 				  'GENL]}}

\han4{{\it 	       (ITIMES 50 (LENGTH (RIPPLE TMP4 'GENL]}}

\han3{{\it        (REASON (* In canonical interpretation, Range-of-op2 is a specialization of a component }}

\han4{{\it 		  of Domain-of-op1)))}}

\han2{{\it  (COND [[MEMB [CAR (LAST (CAR (GETB BA1 'D-R]}}

\han5{{\it 	      (ALL-BUT-LAST (CAR (GETB BA2 'D-R]}}

\han3{{\it 	450}}

\han3{{\it 	(IPLUS 300 (COND ([MEMB [CAR (LAST (CAR (GETB BA1 'D-R]}}

\han7{{\it 				(ALL-BUT-LAST (CAR (GETB BA1 'D-R]}}

\han6{{\it 			  10)}}

\han6{{\it 			 (T 250))}}

\han4{{\it 	       (COND ([MEMB [CAR (LAST (CAR (GETB BA2 'D-R]}}

\han6{{\it 			    (ALL-BUT-LAST (CAR (GETB BA2 'D-R]}}

\han5{{\it 		      11)}}

\han5{{\it 		     (T 250))}}

\han4{{\it 	       (ITIMES 70 (LENGTH (RIPPLE [CAR (LAST (CAR (GETB BA1 'D-R] 'GENL]}}

\han3{{\it        (REASON (* In canonical interpretation, }}

\han4{{\it 		Range-of-op1 is one component of Domain-of-op2))}}

\han2{{\rm  &}}

\han2{{\it  (COND [[ISA [CAR (LAST (CAR (GETB BA1 'D-R]}}

\han5{{\it 	     (ALL-BUT-LAST (CAR (GETB BA2 'D-R]}}

\han3{{\it 	250}}

\han3{{\it 	(IPLUS 50 (COND ([ISA [CAR (LAST (CAR (GETB BA1 'D-R]}}

\han8{{\it 			      (ALL-BUT-LAST (CAR (GETB BA1 'D-R]}}

\han7{{\it 			 10)}}

\han7{{\it 			(T 100))}}

\han5{{\it 	       (COND ([ISA [CAR (LAST (CAR (GETB BA2 'D-R]}}

\han8{{\it 			   (ALL-BUT-LAST (CAR (GETB BA2 'D-R]}}

\han7{{\it 		      11)}}

\han7{{\it 		     (T 100))}}

\han5{{\it 	       (ITIMES 50 (LENGTH (RIPPLE [CAR (LAST (CAR (GETB BA1 'D-R] 'GENL]}}

\han3{{\it        (REASON (* Range-of-op1 is a specialization of a component of Domain-of-op2] }}

\yskip

\4Anglicised condensation:\0

\moveright 30pt \inbox{\hjust{\vjust{
\hjust{	Interest: 11 heuristics.}
\hjust{\hskip 50pt (Shown in English in Appendix 2.25)}

}}}


 \ASSSEC{The `Osets' Concept}

Here is the actual property list of the data-structure corresponding to the
Osets concept, at the time AM is started:

\yyskip


\noindent \5ENGN\0 (OSET Oset Oset-structure OSET-STRUC, Ordered-set (Set))

\yskip

\noindent \5DEFN\0  (TYPE NEC&SUFF RECURSIVE TRANSPARENT 


\han3{{\it [COND}}

\han4{{\it 		    ((EQUAL BA1 (OSET )) T)}}

\han4{{\it 		    (T (APPLYB 'OSET 'DEFN (APPLYB 'OSET-DELETE 'ALGS}}

\han8{{\it 							(APPLYB 'SOME-MEMB 'ALGS BA1)}}

\han8{{\it 							BA1])}}

\han2{{\rm               (TYPE NEC&SUFF RECURSIVE QUICK }}

\han3{{\it [COND}}

\han4{{\it 		    ((EQUAL BA1 '(OSET )) T)}}

\han4{{\it 		    ((CDDR BA1) (APPLYB 'OSET 'DEFN (RPLACD BA1 (CDDR BA1)))}}

\han4{{\it 		    (T NIL])}}

\han2{{\rm               (TYPE NEC&SUFF NONRECURSIVE QUICK }}

\han3{{\it (MATCH BA1 WITH ('OSET $←←ANY$)))}}


\yskip

\noindent \5GENL\0 	(ORD-STRUC NO-MULT-ELES-STRUC)

\yskip

\noindent \5WORTH\0 	  (400) 

\yskip

\noindent \5IN-DOM-OF\0 (OSET-JOIN OSET-INTERSECT OSET-DIFF OSET-INSERT OSET-DELETE)

\yskip

\noindent \5IN-RAN-OF\0 (OSET-JOIN OSET-INTERSECT OSET-DIFF OSET-INSERT OSET-DELETE)


\yskip

\noindent \5VIEW\0 	(STRUCTURE (RPLACA BA1 'OSET))

\yyskip

\4Compare this with the following Anglicised condensation:\0

\moveright 30pt \inbox{\hjust{\vjust{
\hjust{	Name(s): Oset, Oset-structure, Ordered-set, sometimes: Set. }
\hjust{	Definitions: }
\hjust{\hskip 20pt Recursive: $\lambda $ (S) (S=[ ] or }
\hjust{\hskip 25pt  Oset.Definition(Oset-Delete.Alg(Member.Alg(S),S))) }
\hjust{\hskip 20pt Recursive quick: $\lambda $ (S) (S=[ ] or Oset.Definition (CDR(S))) }
\hjust{\hskip 20pt Quick: $\lambda $ (S) (Match S with [$\ldots $] ) }
\hjust{\hskip 20pt Generalizations: Ordered-Struc., No-multiple-elements-Struc. }
\hjust{\hskip 20pt Worth: 400 }
\hjust{\hskip 20pt In-domain-of: Oset-union, Oset-intersect, Oset-difference,}
\hjust{\hskip 25pt  Oset-insert, Oset-delete }
\hjust{\hskip 20pt In-range-of: Oset-union, Oset-intersect, Oset-difference,}
\hjust{\hskip 25pt  Oset-insert, Oset-delete }
\hjust{\hskip 20pt View:  To view any structure as a Oset, do: }
\hjust{\hskip 25pt  $\lambda $ (x) Enclose-in-square-brackets(x) }
}}}

\yskip

\ASSECP{Concepts created by AM}

The list below is not meant as an exhaustive catalogue, but rather
merely to suggest the breadth of AM's syntheses.
The concepts are listed  in the order  in which they were  defined
(see Section
6.2.3).
In  place of the  (usually-awkward) name
chosen by AM, I have given either the standard math/English name  for
the concept, or else a short description of what it is.

\yskip

\parindent 0pt


Sets with less than 2 elements (singletons and empty sets).

Sets with no atomic elements (nests of braces).

Singleton sets.

Bags containing (multiple occurrences of) just one kind of element.

Superset (contains).

Doubleton bags and sets.

Set-membership.

Disjoint bags.

Subset.

Disjoint sets.

Singleton osets.

Same-length (same number of elements).

Same number of left parentheses, plus identical leftmost atoms.

Count (find the number of elements of a given structure).

Numbers (unary representation).

Add.

Minimum.

SUB1 ($\lambda $ (x) x-1).

Insert x into a given Bag-of-T's (almost ADD1, but not quite).

Subtract (except: if x<y, then the result of x-y will be zero\foo{ 
 This is ``natural-number subtract", in the same spirit of naming as we find for
 ``Integer division". }).

Less than or equal to.

Times.

Union of a \4bag\0 of structures.

& (the ampersand represents the creation of several real losers.)

Compose a given operation F with itself (form F$\circ$F).

Insert structure S into itself.

Try to delete structure S from itself (a loser).

Double (add `x' to itself).

Subtract `x' from itself (as an operation, this is a real zero\foo{ a Natural zero? }).

Square (TIMES(x,x)).

Union structure S with itself.

Coalesced-replace2: replace each element s of S by F(s,s).

Coalesced-join2: append together F(s,s), for each member s$\epsilon\,$S.

\hangindent 30pt after 1  Coa-repeat2: create a new op which takes a structure 
S, an operation F, 
and repeats F(s,t,S) all along S.

Compose three operations: $\lambda $(F,G,H) F$\circ$(G$\circ$H).

Compose three operations: $\lambda $(F,G,H) (F$\circ$G)$\circ$H.

& (lots of losing compositions created, e.g. Self-insert$\circ$Set-union.)

ADD\inv (x): all ways of representing x as the sum of positive numbers.

\hangindent 30pt $\{G\circ H\ |\  H(G(H(x)))$ is always defined (wherever H is), 
and G and H are interesting$\}$.

Insert$\circ$Delete.

Delete$\circ$Insert.

Size$\circ$ADD\inv. ($\lambda $ (n) The number of ways to partition n)

Cubing

&

Exponentiation.

Halving  (in natual numbers only; thus Halving(15)=7).

Even numbers.

Integer square-root.

Perfect squares.

Divisors-of.

Numbers-with-0-divisors.

Numbers-with-α1-divisor.

Primes (Numbers-with-2-divisors).

Squares of primes (Numbers-with-3-divisors).

Squares of squares of primes.

Square-roots of primes (a loser).

TIMES\inv (x): all ways of representing x as the product of a bunch of numbers (>1).

All ways of representing x as the product of just one number (a trivial notion).

All ways of representing x as the product of primes.

All ways of representing x as the sum of primes.

All ways of representing x as the sum of two primes.

Numbers uniquely representable as the sum of two primes.

Products of squares.

Multiplication by 1.

Multiplication by 0.

Multiplication by 2.

Addition of 0.

Addition of 1.

Addition of 2.

Product of even numbers.

Sum of squares.

Sum of even numbers.

& (losers: various compositions of 3 operations.)

Pairs of perfect squares whose sum is also a perfect square $(x↑2+y↑2=z↑2)$.

Prime pairs (p, p+2 are prime).

$\vdots $

\parindent 19pt


\ASSECP{Maximally-Divisible Nos.}

\qq{I then adopt a different point of view [from Dirichlet, Wigert, and other
mathematicians who have studied d(n)]. 
I define a highly composite number as a number whose
number of divisors exceeds that of all its predecessors.}{Ramanujan}

This part of the ``Concepts" appendix discusses a 
discovery motivated by AM: a new little bit
of mathematics.

Just as AM defined and studied ``primeness" (natural numbers having as
few divisors as possible), it also defined and studied the converse
kind of numbers: those which possess
an abnormally {\it large} number of divisors.
The AM program made the following definition of what we shall
call the set $M$ of maximally-divisible numbers:

$$M = \{x\epsilon\, \Nscr ↑+\ \relv\ (\forall y<x)\ \ \left( d(y) < d(x)\right)\}$$


\noindent where $d(n)$ is the number of divisors of 
$n$, \foo{ E.g., $d(12) = \|\{1,2,3,4,6,12\}\| = 6$. } 
$\Nscr ↑+$ is the set of positive integers, and the vertical bar, `$ | $',
is read `such that'.

In words, this says that $M$ is the set of all positive integers satisfying
the property that every smaller number has fewer divisors.
That is, we throw into the set $M$ a number $x$ if (and only if) it has more
divisors than any smaller number.
So 1 gets thrown in (the smallest number with 1 divisor),
2 (having 2 divisors), 4 (3 divisors, namely 1, 2, and 4), 6 (4 divisors),
12 (6 divisors), etc.
Another way to specify $M$ is as the set containing (for all $n$) the smallest
number having at least $n$ divisors.\foo{
Notice that we are {\it not} going to include ``the smallest number with
{\it precisely}  5 divisors", since this number (which happens to be 2$↑4$ or 16) 
is bigger than
12 (which has 6 divisors). So no number in $M$ has precisely five divisors.}

One of the questions at the heart of our study is ``Given d, what is the
smallest number with at least d divisors?"


How can we even start on this question? The most powerful tool we have is
the following combinatorially-proved theorem:

If we write {\it n} as  $2↑{a↓1}3↑{a↓2}5↑{a↓3}\cdots p↓k↑{a↓k}$, Then 
$$d(n) = (a↓1+1)\cdot (a↓2+1) \cdots (a↓k+1).\eqno(T1)$$

Our central question could be answered if we could somehow invert this
formula into one which expressed $n$ as a function of $d$, and then found the
minima of that function $n(d)$.
Coupled with the knowledge that each number can be factored uniquely into
prime factors, T1 provides a closed-form way of manipulating $d(n).$
That is, $n$ is really a function of the sequence of exponents when written
as $2↑{a↓1}3↑{a↓2}\cdots$, so we can consider $n = n(a↓1, a↓2, \ldots ).$
Then T1 is really a way of expressing $d(n) = d(a↓1, a↓2, \ldots ).$


After AM collected a fair amount of empirical data, some relationships
were conjectured.  The following one was proven by Knuth, using the
technique of Lagrange multipliers:

If the $a↓i$ were {\it real} numbers, then the minimal value of 
$n$ (for a given value of $d$) will occur whenever

$$(\forall i,j = 1,2,\ldots k)\ \ \ {(a↓i+1)\over (a↓j+1)} = {\log(p↓j)\over \log(p↓i)}.\eqno (T2)$$

This is really a set of $k-1$ equations in the $k$ different variables $a↓1,\ldots ,a↓k.$
Using (as our $k↑{th}$ equation) the 
formula for $d$ which T1 provides, we can solve this system of equations
for each $a↓i$ in terms only of $d.$ The resulting formulae are:

$$(\forall i≤k)\ \ \ a↓i+1 = {{\biglp
d\cdot \log(2)\cdot \log(3)\cdots \log(p↓k)\bigrp}↑{1/k} 
\over \log(p↓i)}\eqno (T3)$$


For example: consider $d=1344.$ The largest that $k$ can be without T3 calling for
$a↓k < 0.5$ is $k=7.$ For this $d$ and $k$, T3 predicts exponents
5.9, 3.3, 2.0, 1.4, 1.0, 0.9, and 0.7.
Rounding this off, we get 6, 3, 2, 1, 1, 1, 1. Next we compute
$2↑63↑35↑27↑111↑113↑117↑1.$ This is 735,134,400. T1 tells us that this has
in fact precisely 1344 divisors. Exhaustive search tells us that
no smaller $n$ has that many divisors.
Incidentally, the ideal value for $n$ (using real exponents $a↓i$) is
603,696,064.
Notice that it is close to, and less than, the smallest integer having at least 1344 
divisors.

$n=2↑83↑55↑37↑211↑213↑117↑119↑123↑129↑131↑137↑141↑143↑147↑153↑1$
is another such ``roun\-ded-ex\-po\-nent" number.
The progression of its exponents+1 (9 6 4 3 3 2 2 2 2 2 2 2 2 2 2 2)
is  about as  close  as one  can  get  to satisfying the  ``logarithm"
constraint.
By that I mean that 9/6 is close to log(3)/log(2); that 2/2 is close to
log(47)/log(43), etc.  Changing any exponent by plus or minus 1 would make
those ratios worse than they are.
This  number $n$ is about 25 billion, and has about 4 million divisors.
The AM conjecture is that there is no smaller number with that many divisors.
Incidentally, the average number in the neighborhood of $n$ has about 
$2↑{\log{\log n}}$ divisors (about 9 divisors, for numbers near 25 billion).



Very  recently, the  author was  directed  to the  work of  Srinivasa
Ramanujan   Aiyangar.  This  Indian   mathematician  was  essentially
self-taught. Receiving little  formal education, he had  almost no
contact  with Western  number theory.   Yet  he became  interested in
number theoretic issues,  and re-derived  much of that  field all  by
himself. In that way, he is perhaps the closest human analogue to AM:
he had ability,  techniques, background knowledge, and he was left to
explore and redevelop much elementary mathematics on his own.  Let me
quote  from G.  H. Hardy's  final\foo{ Taken  from Ramanujan's  obituary
notice, 1921. 
Found in the preface to  [Ramanujan 27].
} sketch of this genius:


\yskip

\moveright 30 pt \hbox par 270 pt{\sl The   limitations  of  his  
knowledge  were   as  startling  as  its
pro\-fun\-di\-ty$\ldots $  Here was a  man who$\ldots $had found the dominant  terms of
many of the  most famous problems in the  analytic theory of numbers,
and yet$\ldots $his ideas of  mathematical proof were  of the most  shadowy
description. All his  results, new or  old, right or wrong,  had been
arrived at by$\ldots $intuition and induction from numerical examples.}

\yskip

It  was exciting to  learn that Ramanujan  had also  defined the very
same set $M,$ which he called \4highly-composite\0 numbers.   His great
interest in them has been  almost unique\foo{
recently, Paul Erdos has been studying these highly-composite numbers. }
within mathematics circles --- until
AM  was  led  to consider  them.  In an  article  published  in 1915,
Ramanujan derives  the  relationship: $a↓i\cdot\log(p↓i)=constant,$  which  he
says holds approximately, for values of $i$ which are much smaller than
$k.$  He establishes this using inequalities (and using the distribution
of prime  numbers $\pi (x)$).   Thus it has  a different flavor  from the
similar relationship (T2) derived using calculus.
Also, Ramanujan at this point went off
on quite a different path from AM:
he  defined  a  specialization   of  this  concept,  which  he  called
``\4superior\0  highly-composite  numbers",  and  investigated  them  in
detail.
Neither AM nor the author had the sophistication to make that definition
and to find the results which Ramanujan subsequently uncovered about
superior highly-composite numbers.